# -*- encoding:utf-8 -*-
# !/usr/bin/env python
'''
    python-project01-card.py
    ======================
    @descript: 名片管理
    @copyright:nnz
    @author:dln
    @date: 2021/8/12 16:07
    @version:v1.0
'''
import sys

C_NUM = 60
C_NUM01 = 45
v_list = []


# 显示欢迎界面模块
def Show_Welcome_Interface():
    print('欢迎使用【名片管理系统】V1.0')
    print()
    print('1.新增名片')
    print('2.显示全部')
    print('3.搜索名片')
    print('4.删除名片')
    print()
    print('0.退出系统')
    print('*' * C_NUM)
    pass


# 显示二级目录选项
def Show_Welcome_Interface02():
    print('_' * C_NUM01)
    print('请选择要执行的操作：')
    print()
    print('2.修改')
    print()
    print('0.返回上一级菜单')
    pass


# 获取用户信息
def Get_input():
    print('*' * C_NUM)
    v_select = input('请选择希望执行的操作')
    v_result = v_select.strip()  # 去掉两边的空格
    print('您选择的操作是[{}]'.format(v_select))
    return v_result


pass


# 当输入内容不是0,1,2,3时
def Case_Error():
    print('*' * C_NUM)
    print('请输入正确的选项！')
    pass


# 退出系统
def Ease_Exit():
    print('*' * C_NUM)
    print('欢迎再次使用【名片管理系统】')
    sys.exit(0)
    pass


# 当输入1时
def Case1_Add():
    print('*' * C_NUM)
    print('新增名片')
    v_card_name = input('请输入姓名:')
    v_card_tel = input('请输入电话:')
    v_card_qq = input('请输入qq:')
    v_card_emile = input('请输入邮箱:')
    v_dict = dict(name=v_card_name, tel=v_card_tel, qq=v_card_qq, emile=v_card_emile)
    v_list01 = v_list.append(v_dict)
    print(v_dict)
    print('添加{}的名片成功：'.format(v_card_name))
    pass


# 当输入2时
def Show_Card():
    if len(v_list) == 0:  # 没有名片信息
        print('抱歉没有搜索到名片信息，请添加名片信息')
    else:  # 有名片信息
        Show_All()


pass


# 有名片信息时展示的内容
def Show_All():
    print('-' * C_NUM)
    print('显示所有名片')
    print('姓名\t\t电话\t\tQQ\t\t邮箱\t\t')
    print('*' * C_NUM)
    for parm in v_list:
        print(parm.get('name'), end='\t\t')
        print(parm.get('tel'), end='\t\t')
        print(parm.get('qq'), end='\t\t')
        print(parm.get('email'), end='\t\t')
        print()
        pass
    pass


# 搜索名片
def Case3_Search():
    print('*' * C_NUM)
    print('搜索名片信息')
    v_search_name = input('请输入要搜索的名字')
    print(v_search_name)
    for elment in v_list:
        if elment['name']==v_search_name:
          print(elment)
    else:
          print('没有查询到该名片信息')
    v_show_card=input('请选择要执行的操作 【1】修改  【2】删除  【3】返回上一级')
    while True:
       if v_input==2:
            Case4_delete()
       else:
            Case3_Search()
pass

# 根据名字获取list里面的内容
def fun_list(v_search_name):
    v_result = None
    for menent in v_list:
        if menent.get('name') == v_search_name:
            v_result = menent
            break
            pass
        pass
        return v_result


# 更新名片功能
def update_card(v_list):
    v_list04 = v_list.get('name')  # 通过名字获取字典里的信息
    print('更新名片信息')
    v_card_name = input('请输入姓名:')
    v_card_tel = input('请输入电话:')
    v_card_qq = input('请输入qq:')
    v_card_emile = input('请输入邮箱:')
    v_list['name'] = v_card_name
    v_list['tel'] = v_card_tel
    v_list['qq'] = v_card_qq
    v_list['emile'] = v_card_emile
    print('更新名片成功'.format(v_list04))
    pass


# 删除名片
def Case4_delete(v_list):
    v_list.remove(v_list)
    print('删除成功')
    pass


while True:
    # 显示欢迎界面
    Show_Welcome_Interface()
    # 获取用户所输入的信息
    v_input = int(Get_input())
    if v_input ==0:  # 输入内容为0时
        Ease_Exit()  # 退出程序
    elif v_input ==1:  # 输入内容为1时
        Case1_Add()  # 添加名片
    elif v_input ==2:  # 输入内容为2时
        Show_Card()  # 显示全部内容
    elif v_input ==3:  # 输入内容为3时
        Case3_Search()  # 搜索名片
    else:
        Case_Error()  # 如果输入其他，提示错误
    pass
pass
